1. 安装
mosquitto已经被加入到EPEL仓库中,添加EPEL源后可以直接通过yum安装。
sudo yum -y install epel-release
sudo yum install mosquitto
2. 启停控制
控制mosquitto这个service即可。
# 启动
sudo systemctl start mosquitto
# 停止
sudo systemctl stop mosquitto
#重启
sudo systemctl restart mosquitto
# 开机自启
sudo systemctl stop mosquitto
3. 提升安全等级
默认配置文件的位置是:/etc/mosquitto/mosquitto.conf。
(1)关闭allow_anonymous
在配置文件中去掉allow_anonymous参数前的注释符#,并将选项修改为false。
allow_anonymous false
(2)设置密码
在配置文件中去掉passwd_file参数前的注释符#,并添加选项为/etc/mosquitto/passwd,即:
password_file /etc/mosquitto/passwd
passwd文件按username:password格式编写,如:
alice:123456
重启mosquitto后配置生效,同时passwd文件中的密码转为密文存储。
(3)用户权限控制
在配置文件中去掉acl_file参数前的注释符#,并添加选项为/etc/mosquitto/acl,即:
acl文件示例如下:
# 不加user参数的选项对所有client都有效;加user参数的只对以特定用户名登录的client生效
user alice
# 用户alice具有所有系统主题的读权限
topic read $SYS/#
# 用户alice具有Topic/1的写权限
topic write Topic/1
【参考文献】
https://www.digitalocean.com/community/tutorials/how-to-install-and-secure-the-mosquitto-mqtt-messaging-broker-on-centos-7
https://ming-yi.github.io/2016/08/17/Mosquitto MQTT 安裝/